﻿using Newtonsoft.Json;
using System;
using System.Text.Json.Serialization;

namespace ThresholdAssistant.DataContract.Models
{
    /// <summary>
    /// 授权的机器人信息
    /// </summary>
    [Serializable]
    public class RobotInfoModel
    {
        /// <summary>
        /// 主键Id
        /// </summary>
        [JsonProperty("id"), JsonPropertyName("id")]
        public int Id { get; set; }

        /// <summary>
        /// 机器人Id
        /// </summary>
        [JsonProperty("robot_wx_id"), JsonPropertyName("robot_wx_id")]
        public string RobotWxId { get; set; }

        /// <summary>
        /// 机器人编号
        /// </summary>
        [JsonProperty("robot_serial_no"), JsonPropertyName("robot_serial_no")]
        public string RobotSerialNo { get; set; }

        /// <summary>
        /// 程序编号
        /// </summary>
        [JsonProperty("device_user_serial_no"), JsonPropertyName("device_user_serial_no")]
        public string DeviceUserSerialNo { get; set; }

        /// <summary>
        /// 机器人基础属性
        /// </summary>
        [JsonProperty("robot"), JsonPropertyName("robot")]
        public RobotBaseInfoModel Robot { get; set; }

        /// <summary>
        /// 机器人的设备信息
        /// </summary>
        [JsonProperty("robot_device"), JsonPropertyName("robot_device")]
        public RobotDeviceInfoModel RobotDevice { get; set; }

        /// <summary>
        /// 机器人扩展信息
        /// </summary>
        [JsonProperty("robot_extend"), JsonPropertyName("robot_extend")]
        public RobotExtendInfoModel RobotExtend { get; set; }

        /// <summary>
        /// 机器人心跳
        /// </summary>
        [JsonProperty("robot_heart"), JsonPropertyName("robot_heart")]
        public RobotHeartInfoModel RobotHeart { get; set; }
    }
}